package com.xinzhidi.web.netty.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xinzhidi.common.annotation.Excel;
import com.xinzhidi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * 户用、单元热量协议-历史数据对象 agreement_heat_history
 *
 * @author cx
 * @date 2023-06-17
 */
@ApiModel(value = "户用、单元热量协议-历史数据对象")
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("agreement_heat_history")
public class AgreementHeatHistory extends BaseEntity {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "指令发送表id")
    @Excel(name = "指令发送表id")
    private Long deviceInstructionId;

    @ApiModelProperty(value = "dtuId")
    @Excel(name = "dtuId")
    private Long dtuId;

    @ApiModelProperty(value = "协议类型 4：户用热量表协议 5：单元热量表协议")
    @Excel(name = "协议类型")
    private String protocolType;

    @ApiModelProperty(value = "协议名称")
    @Excel(name = "协议名称")
    private String protocolName;

    @ApiModelProperty(value = "指令类型")
    @Excel(name = "指令类型")
    private String instructType;

    @ApiModelProperty(value = "指令名称")
    @Excel(name = "指令名称")
    private String instructName;

    @ApiModelProperty(value = "小区id")
    @Excel(name = "小区id")
    private Long plotId;

    @ApiModelProperty(value = "楼栋id")
    @Excel(name = "楼栋id")
    private Long buildId;

    @ApiModelProperty(value = "单元id")
    @Excel(name = "单元id")
    private Long unitId;

    @ApiModelProperty(value = "住户id")
    @Excel(name = "住户id")
    private Long householdId;

    @ApiModelProperty(value = "前缀")
    @Excel(name = "前缀")
    private String prefix;

    @ApiModelProperty(value = "起始符")
    @Excel(name = "起始符")
    private String startChar;

    @ApiModelProperty(value = "设备类型")
    @Excel(name = "设备类型")
    private String deviceType;

    @ApiModelProperty(value = "地址域")
    @Excel(name = "地址域")
    private String address;

    @ApiModelProperty(value = "控制码")
    @Excel(name = "控制码")
    private String controlCode;

    @ApiModelProperty(value = "长度域")
    @Excel(name = "长度域")
    private String lengthField;

    @ApiModelProperty(value = "数据域（标识）")
    @Excel(name = "数据域", readConverterExp = "标识")
    private String dataFieldMark;

    @ApiModelProperty(value = "数据域（序列号）")
    @Excel(name = "数据域", readConverterExp = "序列号")
    private String dataFieldSerialNumber;

    @ApiModelProperty(value = "数据域（数据）")
    @Excel(name = "数据域", readConverterExp = "数据")
    private String dataFieldData;

    @ApiModelProperty(value = "校验码")
    @Excel(name = "校验码")
    private String checkCode;

    @ApiModelProperty(value = "结束符")
    @Excel(name = "结束符")
    private String endMark;

    @ApiModelProperty(value = "指令集合(十六进制)")
    @Excel(name = "指令集合(十六进制)")
    private String instructionSet;

    @ApiModelProperty(value = "设备数据")
    @Excel(name = "设备数据")
    private String jsonData;

}
